010ad3dba1b4862a0c1dd0db8428b9e13b15d425,platform/lang-api/src/com/intellij/execution/actions/ConfigurationContext.java,ConfigurationContext,getSelectedPsiElement,#DataContext#Project#,152

Before Change


    if (editor != null){
      final PsiFile psiFile = PsiDocumentManager.getInstance(project).getPsiFile(editor.getDocument());
      if (psiFile != null) {
        element = psiFile.findElementAt(editor.getCaretModel().getOffset());
      }
    }
    if (element == null) {

After Change


    PsiElement element = null;
    final Editor editor = PlatformDataKeys.EDITOR.getData(dataContext);
    if (editor != null){
      final PsiFile psiFile = PsiDocumentManager.getInstance(project).getPsiFile(editor.getDocument());
      if (psiFile != null) {
        final int offset = editor.getCaretModel().getOffset();
        element = psiFile.findElementAt(offset);
        if (element == null && offset > 0 && offset == psiFile.getTextLength()) {
          element = psiFile.findElementAt(offset-1);
        }
      }